<?php

/**
 *  @FileComment            [前台用户模型]
 *  @ProjectName             项目名称：shopFrame
 *  @FileName                   文件名称：UserModel.class.php
 *  @Author                       yuerengui <596580041@qq.com>
 *  @Date                          2014-10-5 13:23:54
 *  *
 */
class UserModel extends Model {

        public $table = 'user';
        public $validate = array(
            array('regName', 'nonull', '请输入用户名', 2, 3),
            array('regName', 'regexp:/^[A-Za-z0-9_\\-\\x7f-\\xff]+$/', '用户名只能由中文、英文、数字及"-"、"_"组成', 2, 3),
            array('regName', '_num', '用户名不能是纯数字，请重新输入', 2, 3),
            array('regName', 'minlen:6', '用户名长度只能在6-20位字符之间', 2, 3),
            array('regName', 'maxlen:20', '用户名长度只能在6-20位字符之间', 2, 3),
            array('regPass', 'nonull', '请输入密码', 2, 3),
            array('regPass', 'minlen:6', '密码长度只能在6-20位字符之间', 2, 3),
            array('regPass', 'maxlen:20', '密码长度只能在6-20位字符之间', 2, 3),
            array('regPass', '_passNum', '该密码比较简单，建议您更改为复杂密码', 2, 3),
            array('regPass', 'confirm:rePass', '两次输入密码不一致', 2, 3),
        );

        public function _num() {
                $regName = Q('post.regName', '');
                $preg = '/^[0-9]+$/';
                if (preg_match($preg, $regName)) {
                        return false;
                } else {
                        return true;
                }
        }

        public function _passNum() {
                $regPass = Q('post.regPass', '');
                $preg = '/^[0-9]+$/';
                if (preg_match($preg, $regPass)) {
                        return false;
                } else {
                        return true;
                }
        }

        public function add_user() {
                $data = array(
                    'username' => Q('post.regName', ''),
                    'password' => Q('post.regPass', '', 'md5')
                );
                if ($this->where(array('username' => $data['username']))->find()) {
                        $this->error = '用户名已经存在！';
                        return false;
                }
                $this->add($data);
                return true;
        }

        public function get_one_data($uid) {
                return $this->where(array('uid' => $uid))->find();
        }

}
